From 2544d7b7197a310db894fdb8d4a21cfd2b0581d3 Mon Sep 17 00:00:00 2001 From: Kristian Rietveld Date: Mon, 25 Feb 2002 21:20:25 +0000 Subject: [PATCH] call _gtk_tree_view_column_cell_set_dirty when visible, so this column Mon Feb 25 22:11:34 2002 Kristian Rietveld * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_visible): call _gtk_tree_view_column_cell_set_dirty when visible, so this column gets some space allocated. (#70996) * gtk/gtkliststore.c (gtk_list_store_get_path): add simple optimization for the tail case (gtk_list_store_real_set_value): remove unneeded _get_path calls --- ChangeLog | 10 ++++++++++ ChangeLog.pre-2-0 | 10 ++++++++++ ChangeLog.pre-2-10 | 10 ++++++++++ ChangeLog.pre-2-2 | 10 ++++++++++ ChangeLog.pre-2-4 | 10 ++++++++++ ChangeLog.pre-2-6 | 10 ++++++++++ ChangeLog.pre-2-8 | 10 ++++++++++ gtk/gtkliststore.c | 11 ++++++----- gtk/gtktreeviewcolumn.c | 3 +++ 9 files changed, 79 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3297b68135..0b93396262 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +Mon Feb 25 22:11:34 2002 Kristian Rietveld + + * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_visible): call + _gtk_tree_view_column_cell_set_dirty when visible, so this column + gets some space allocated. (#70996) + + * gtk/gtkliststore.c (gtk_list_store_get_path): add simple + optimization for the tail case + (gtk_list_store_real_set_value): remove unneeded _get_path calls + Mon Feb 25 12:47:25 2002 Owen Taylor * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index 3297b68135..0b93396262 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,3 +1,13 @@ +Mon Feb 25 22:11:34 2002 Kristian Rietveld + + * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_visible): call + _gtk_tree_view_column_cell_set_dirty when visible, so this column + gets some space allocated. (#70996) + + * gtk/gtkliststore.c (gtk_list_store_get_path): add simple + optimization for the tail case + (gtk_list_store_real_set_value): remove unneeded _get_path calls + Mon Feb 25 12:47:25 2002 Owen Taylor * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 3297b68135..0b93396262 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,13 @@ +Mon Feb 25 22:11:34 2002 Kristian Rietveld + + * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_visible): call + _gtk_tree_view_column_cell_set_dirty when visible, so this column + gets some space allocated. (#70996) + + * gtk/gtkliststore.c (gtk_list_store_get_path): add simple + optimization for the tail case + (gtk_list_store_real_set_value): remove unneeded _get_path calls + Mon Feb 25 12:47:25 2002 Owen Taylor * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index 3297b68135..0b93396262 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,13 @@ +Mon Feb 25 22:11:34 2002 Kristian Rietveld + + * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_visible): call + _gtk_tree_view_column_cell_set_dirty when visible, so this column + gets some space allocated. (#70996) + + * gtk/gtkliststore.c (gtk_list_store_get_path): add simple + optimization for the tail case + (gtk_list_store_real_set_value): remove unneeded _get_path calls + Mon Feb 25 12:47:25 2002 Owen Taylor * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 3297b68135..0b93396262 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,13 @@ +Mon Feb 25 22:11:34 2002 Kristian Rietveld + + * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_visible): call + _gtk_tree_view_column_cell_set_dirty when visible, so this column + gets some space allocated. (#70996) + + * gtk/gtkliststore.c (gtk_list_store_get_path): add simple + optimization for the tail case + (gtk_list_store_real_set_value): remove unneeded _get_path calls + Mon Feb 25 12:47:25 2002 Owen Taylor * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 3297b68135..0b93396262 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,13 @@ +Mon Feb 25 22:11:34 2002 Kristian Rietveld + + * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_visible): call + _gtk_tree_view_column_cell_set_dirty when visible, so this column + gets some space allocated. (#70996) + + * gtk/gtkliststore.c (gtk_list_store_get_path): add simple + optimization for the tail case + (gtk_list_store_real_set_value): remove unneeded _get_path calls + Mon Feb 25 12:47:25 2002 Owen Taylor * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 3297b68135..0b93396262 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,13 @@ +Mon Feb 25 22:11:34 2002 Kristian Rietveld + + * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_visible): call + _gtk_tree_view_column_cell_set_dirty when visible, so this column + gets some space allocated. (#70996) + + * gtk/gtkliststore.c (gtk_list_store_get_path): add simple + optimization for the tail case + (gtk_list_store_real_set_value): remove unneeded _get_path calls + Mon Feb 25 12:47:25 2002 Owen Taylor * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): diff --git a/gtk/gtkliststore.c b/gtk/gtkliststore.c index d405083492..dfc00c4931 100644 --- a/gtk/gtkliststore.c +++ b/gtk/gtkliststore.c @@ -514,6 +514,12 @@ gtk_list_store_get_path (GtkTreeModel *tree_model, g_return_val_if_fail (GTK_IS_LIST_STORE (tree_model), NULL); g_return_val_if_fail (iter->stamp == GTK_LIST_STORE (tree_model)->stamp, NULL); + if (G_SLIST (iter->user_data) == G_SLIST (GTK_LIST_STORE (tree_model)->tail)) + { + retval = gtk_tree_path_new (); + gtk_tree_path_append_index (retval, GTK_LIST_STORE (tree_model)->length - 1); + return retval; + } for (list = G_SLIST (GTK_LIST_STORE (tree_model)->root); list; list = list->next) { @@ -651,7 +657,6 @@ gtk_list_store_real_set_value (GtkListStore *list_store, { GtkTreeDataList *list; GtkTreeDataList *prev; - GtkTreePath *path; GValue real_value = {0, }; gboolean converted = FALSE; gint orig_column = column; @@ -691,13 +696,11 @@ gtk_list_store_real_set_value (GtkListStore *list_store, { if (column == 0) { - path = gtk_list_store_get_path (GTK_TREE_MODEL (list_store), iter); if (converted) _gtk_tree_data_list_value_to_node (list, &real_value); else _gtk_tree_data_list_value_to_node (list, value); retval = TRUE; - gtk_tree_path_free (path); if (converted) g_value_unset (&real_value); return retval; @@ -727,13 +730,11 @@ gtk_list_store_real_set_value (GtkListStore *list_store, column --; } - path = gtk_list_store_get_path (GTK_TREE_MODEL (list_store), iter); if (converted) _gtk_tree_data_list_value_to_node (list, &real_value); else _gtk_tree_data_list_value_to_node (list, value); retval = TRUE; - gtk_tree_path_free (path); if (converted) g_value_unset (&real_value); diff --git a/gtk/gtktreeviewcolumn.c b/gtk/gtktreeviewcolumn.c index c2f477253b..00d5afa193 100644 --- a/gtk/gtktreeviewcolumn.c +++ b/gtk/gtktreeviewcolumn.c @@ -1445,6 +1445,9 @@ gtk_tree_view_column_set_visible (GtkTreeViewColumn *tree_column, tree_column->visible = visible; + if (tree_column->visible) + _gtk_tree_view_column_cell_set_dirty (tree_column, TRUE); + gtk_tree_view_column_update_button (tree_column); g_object_notify (G_OBJECT (tree_column), "visible"); } -- 2.30.2